package com.cn.esermis.dpld.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 气体检测小时记录
 */
@Data
@TableName("air_monitor_hour_record")
public class AirMonitorHourRecord {

    private static final long serialVersionUID = 8887499842971074427L;

    /**
     * 主键id
     */
    @TableId(value = "id", type = IdType.UUID)
    private String id;
    /**
     * 请求编码 QN-精确到毫秒的时间戳:QN=YYYYMMDDhhmmsszzz，用来唯一标识一次命令交互
     */
    @TableField(value = "qn")
    private String qn;
    /**
     * ST=系统编码, 系统编码取值详见 6.6.1 章节的表 5《系统编码表》
     */
    @TableField(value = "st")
    private String st;
    /**
     *命令编码 CN CN=命令编码, 命令编码取值详见 6.6.5 章节的表 9《命令编码表》
     */
    @TableField(value = "cn")
    private String cn;
    /**
     *访问密码
     */
    @TableField(value = "pw")
    private String pw;
    /**
     * MN=设备唯一标识，这个标识固化在设备中，用于唯一标识一个设备。MN 由 EPC-96 编码转化的字符串组成，即 MN 由 24 个 0~9，A~F 的字符组成
     */
    @TableField(value = "mn")
    private String mn;

    /**
     * 拆分包及应答标志
     */
    @TableField(value = "flag")
    private Integer flag;

    /**
     * 数据时间信息
     */
    @TableField(value = "data_time")
    private String dataTime;
    /**
     * 监测因子编码 对应监测因子表的code
     */
    @TableField(value = "factor")
    private String factor;

    /**
     * 小时最小值
     */
    @TableField(value = "min")
    private BigDecimal min;
    /**
     * 小时最大值
     */
    @TableField(value = "max")
    private BigDecimal max;
    /**
     * 小时平均值
     */
    @TableField(value = "avg")
    private BigDecimal avg;
    /**
     * 小时累计值
     */
    @TableField(value = "cou")
    private BigDecimal cou;
    /**
     * 监测状态 N 在线监控（监测）仪器仪表工作正常
     * F 在线监控（监测）仪器仪表停运
     * M 在线监控（监测）仪器仪表处于维护期间产生的数据
     * S 手工输入的设定值
     * D 在线监控（监测）仪器仪表故障
     * C 在线监控（监测）仪器仪表处于校准状态
     * T 在线监控（监测）仪器仪表采样数值超过测量上限
     * B 在线监控（监测）仪器仪表与数采仪通讯异常）
     */
    @TableField(value = "factor_flag")
    private String factorFlag;
    /**
     * 折算最小值
     */
    @TableField(value = "zs_min")
    private BigDecimal zsMin;
    /**
     * 折算最大值
     */
    @TableField(value = "zs_max")
    private BigDecimal zsMax;
    /**
     * 折算平均值
     */
    @TableField(value = "zs_avg")
    private BigDecimal zsAvg;

    /**
     * 污染物实时采样数据
     */
    @TableField(value = "rtd")
    private BigDecimal rtd;



    @TableField(value = "is_lose")
    private String isLose;

    @TableField(value = "is_six")
    private String isSix;

    @TableField(value = "is_exceed")
    private String isExceed;

    /**
     * 工况
     */
    @TableField(value = "work_condition")
    private Integer workCondition;
    @TableField(value = "creat_time")
    private Date creatTime;
}
